package com.urea.system.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.urea.common.annotation.Excel;
import com.urea.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.time.LocalDateTime;
import java.util.Date;

/**
 * 客户信息对象 t_customer
 * 
 * @author liuzd
 * @date 2023-08-01
 */
@Data
@ToString(callSuper = true)
public class CustomerVo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 昵称 */
    @Excel(name = "昵称")
    @ApiModelProperty("昵称")
    private String nickName;

    /** 头像 */
    @Excel(name = "头像")
    @ApiModelProperty("头像")
    private String headImgUrl;

    /** 帐号 */
    @Excel(name = "帐号")
    @ApiModelProperty("帐号")
    private String account;

    /** 用户open_id */
    @Excel(name = "用户open_id")
    @ApiModelProperty("用户open_id")
    private String openId;

    /** 手机号 */
    @Excel(name = "手机号")
    @ApiModelProperty("手机号")
    private String phone;

    /** 用户unionid */
    @Excel(name = "用户unionid")
    @ApiModelProperty("用户unionid")
    private String unionid;

    /** 用户类型;0普通用户，1电子卡用户，2车队用户 */
    @Excel(name = "用户类型;0普通用户，1电子卡用户，2车队用户")
    @ApiModelProperty("用户类型;0普通用户，1电子卡用户，2车队用户")
    private Integer userType;

    /** 密码 */
    @Excel(name = "密码")
    @ApiModelProperty("密码")
    private String password;

    /**小程序code*/
    @ApiModelProperty("小程序code")
    private String appId;
    /**用户code*/
    @ApiModelProperty("用户code")
    private String code;

    @ApiModelProperty("获取手机号code")
    private String phoneCode;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private LocalDateTime createdTime;
    @ApiModelProperty("账户信息")
    private CustomerAccountVo accountVo;
    @ApiModelProperty("车队信息")
    private FleetUserVo fleetUserVo;

    @ApiModelProperty("总用户数")
    private Long allCount;
    @ApiModelProperty("当天用户")
    private Long dayCount;
    @ApiModelProperty("昨天用户")
    private Long yestCount;
    @ApiModelProperty("七天内用户")
    private Long sevenCount;
    @ApiModelProperty("当月用户")
    private Long monthCount;
    @ApiModelProperty("上月用户")
    private Long lastMonthCount ;

    /** 车队名称 */
    @Excel(name = "车队名称")
    @ApiModelProperty("车队名称")
    private String fleetName;


}
